[file name]: Git.gitattributes.html [file content begin] Git .gitattributes - Jassif Team Institution

Git .gitattributes

फ़ाइलों को Git कैसे संभाले, इसे नियंत्रित करें

.gitattributes क्या है?

.gitattributes फ़ाइल एक विशेष फ़ाइल है जो आपके रिपॉजिटरी में विशिष्ट फ़ाइलों को Git कैसे संभाले, यह बताती है।

यह लाइन समाप्ति, फ़ाइल प्रकार, मर्ज व्यवहार, कस्टम डिफ़ टूल और बहुत कुछ नियंत्रित करती है।

यह फ़ाइल आपकी परियोजना के साथ संस्करणित की जाती है, इसलिए आपकी टीम में सभी को समान सेटिंग्स मिलती हैं।

💡 नोट:

Git LFS के बारे में अधिक जानकारी के लिए, समर्पित पृष्ठ देखें।

.gitattributes-कब उपयोग करें

लाइन समाप्ति

विभिन्न ऑपरेटिंग सिस्टम पर सुसंगत लाइन समाप्ति लागू करें

बाइनरी फ़ाइलें

फ़ाइलों को बाइनरी के रूप में चिह्नित करें (Git उन्हें मर्ज करने या रूपांतरित करने का प्रयास नहीं करेगा)

Git LFS

बड़ी फ़ाइलों के लिए Git LFS सक्षम करें

कस्टम टूल

विशेष फ़ाइल प्रकारों के लिए कस्टम डिफ़ या मर्ज टूल सेट करें

1

.gitattributes बनाएं या संपादित करें

अपने रिपॉजिटरी के रूट पर जाएं (या स्थानीय नियमों के लिए एक उपनिर्देशिका में)।

.gitattributes फ़ाइल बनाएं या संपादित करें।

फ़ाइलों को Git कैसे संभाले, इसके नियम जोड़ें, एक पंक्ति में एक।

उदाहरण: सभी टेक्स्ट फ़ाइलों के लिए Unix लाइन समाप्ति लागू करें

*.txt text eol=lf
2

लाइन समाप्ति संभालें

विभिन्न OS पर मर्ज संघर्ष और टूटी हुई फ़ाइलों से बचने के लिए लाइन समाप्ति को मानकीकृत करें।

उदाहरण: शेल स्क्रिप्ट्स के लिए LF सेट करें

*.sh text eol=lf
3

फ़ाइलों को बाइनरी के रूप में चिह्नित करें

Git को बताएं कि कौन सी फ़ाइलें बाइनरी (टेक्स्ट नहीं) हैं।

यह इन फ़ाइलों के लिए Git को मर्ज करने या लाइन समाप्ति बदलने का प्रयास करने से रोकता है।

उदाहरण: PNG फ़ाइलों को बाइनरी के रूप में चिह्नित करें

*.png binary
4

फ़ाइल प्रकारों के लिए LFS सक्षम करें

बड़ी फ़ाइलों जैसे छवियों या डेटासेट के लिए Git LFS का उपयोग करें।

यह Git को बताता है कि इन फ़ाइलों के लिए LFS का उपयोग करें:

उदाहरण: PSD फ़ाइलों को LFS के साथ ट्रैक करें

*.psd filter=lfs diff=lfs merge=lfs -text
5

कस्टम डिफ़ सेटिंग्स

Git को बताएं कि विशिष्ट फ़ाइल प्रकारों (जैसे Markdown या Jupyter notebooks) की तुलना करने के लिए एक विशेष टूल का उपयोग करें:

उदाहरण: Markdown के लिए कस्टम डिफ़

*.md diff=markdown
6

एट्रिब्यूट्स जांचें

यह देखने के लिए कि किसी फ़ाइल के लिए कौन से एट्रिब्यूट्स सेट हैं:

उदाहरण: किसी फ़ाइल के एट्रिब्यूट्स जांचें

git check-attr --all README.md

उन्नत उपयोग

मर्ज रणनीतियाँ

जटिल फ़ाइलों (जैसे लॉक फ़ाइलें या notebooks) के लिए कस्टम मर्ज ड्राइवर सेट करें।

Export-ignore

git archive द्वारा बनाए गए tar/zip संग्रहों से फ़ाइलों को बाहर करें:

docs/* export-ignore

युक्तियाँ और सर्वोत्तम प्रथाएं

1

पैटर्न

पैटर्न .gitignore की तरह ही काम करते हैं (वाइल्डकार्ड्स, आदि)।

2

उपनिर्देशिकाएँ

स्थानीय नियमों के लिए .gitattributes को उपनिर्देशिकाओं में रखें जहाँ वे केवल लागू हों।

3

पिछड़ा संशोधित नहीं करता

.gitattributes बदलना पहले से कमिट की गई फ़ाइलों को पिछड़ा संशोधित नहीं करता है - उन्हें अपडेट करने के लिए फ़ाइलों को फिर से जोड़ें।

4

डिबगिंग

एट्रिब्यूट समस्याओं को डिबग करने के लिए git check-attr का उपयोग करें।

📝 नोट:

.gitattributes आपकी परियोजना के साथ संस्करणित होता है, इसलिए आपकी टीम में सभी को समान सेटिंग्स मिलती हैं।

त्वरित संदर्भ

लाइन समाप्ति

Unix लाइन समाप्ति

*.txt text eol=lf

बाइनरी फ़ाइलें

बाइनरी फ़ाइलें चिह्नित करें

*.png binary

Git LFS

बड़ी फ़ाइलों के लिए LFS

*.psd filter=lfs

एट्रिब्यूट्स जांचें

फ़ाइल एट्रिब्यूट्स जांचें

git check-attr
[file content end]